The present invention relates to disc drives. In particular, the present invention relates to runout compensation in disc drives.
In a computer disc drive, data is stored on a disc in concentric tracks. In disc drives with relatively high track densities, a servo feedback loop is used to maintain a head over the desired track during read and write operations. This is accomplished utilizing prerecorded servo information either on a dedicated servo disc or on angularly spaced sectors that are interspersed among the data on the disc. During track following, the servo information sensed by the head is demodulated to generate a position error signal (PES), which provides an indication of the position error of the head away from the track center. The PES is then converted into an actuator control signal, which is fed back to an actuator to position the head.
In general, there are two forms of head positioning errors: repeatable and non-repeatable. Repeatable errors, which are generally caused by mechanical irregularities in the structure of the disc drive or errors introduced when writing the servo tracks, can be predicted and therefore theoretically can be cancelled out as they occur. In general, these repeatable runout errors (RRO) are removed by introducing a compensation signal into the servo loop that cancels the repeatable positioning error. Techniques for generating such compensation signals are generally referred to as feedforward cancellation.
Feedforward cancellation is much more difficult to implement for nonrepeatable runout errors (NRRO). Unlike repeatable runout errors, nonrepeatable runout errors do not occur with predictable magnitudes, frequencies or phases. In fact, the magnitude, frequency and phase of a nonrepeatable runout error signal generally change with each rotation of the disc.
One system, discussed by Yu in U.S. Pat. No. 5,072,318, attempts to cancel a nonrepeatable runout error by adaptively changing a cancellation signal at each sector of the disc. Specifically, Yu uses a least squares algorithm to adaptively change the frequency, phase, and amplitude of the nonrepeatable runout cancellation signal at each sector.
Because Yu uses a least squares algorithm to determine the amplitude, frequency and phase of the cancellation signal, it takes time for the Yu algorithm to converge on the proper amplitude, frequency and phase. In addition, because the frequency and phase are utilized in a cosine function when generating the cancellation signal, the least square algorithm cannot converge on the frequency and phase in a linear manner.
The present invention provides a solution to this and other problems, and offers other advantages over the prior art.
A method and apparatus are provided for generating a feedforward cancellation signal for a next sector of a disc in a disc drive. To form the cancellation signal, the method and apparatus generate a trigonometric value having the phase and frequency of a nonrepeatable runout error by passing a position error signal through a phase lock loop. An amplitude is determined for the cancellation signal based on the position error signal. The amplitude is then multiplied by the trigonometric value to from the cancellation signal.